package com.hhit.bigscreenbackmanage.service.jdgl;


import com.alibaba.fastjson.JSONObject;
import com.hhit.bigscreenbackmanage.entity.jdgl.TJdglDwjsjdjh;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

/**
 * 电网建设进度计划(TJdglDwjsjdjh)表服务接口
 *
 * @author makejava
 * @since 2021-07-20 20:52:30
 */
public interface TJdglDwjsjdjhService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    TJdglDwjsjdjh queryById(String id);

    /**
     * 查询多条数据
     *
     * @param offset 查询起始位置
     * @param limit 查询条数
     * @return 对象列表
     */
    List<TJdglDwjsjdjh> queryAllByLimit(int offset, int limit);

    /**
     * 新增数据
     *
     * @param tJdglDwjsjdjh 实例对象
     * @return 实例对象
     */
    TJdglDwjsjdjh insert(TJdglDwjsjdjh tJdglDwjsjdjh);

    /**
     * 修改数据
     *
     * @param tJdglDwjsjdjh 实例对象
     * @return 实例对象
     */
    TJdglDwjsjdjh update(TJdglDwjsjdjh tJdglDwjsjdjh);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(String id);

    /**
     * 导入电网建设进度计划
     */
    Map<String,Object> importDwjsjdjh(String propName, MultipartFile[] files, String dataTime);

    /**
     * 导入农民工工资各地市
     * @param propName
     * @param files
     * @return
     */
    Map<String,Object> importNmggz(String propName, MultipartFile[] files, String dataTime);

    Map<String,Object> importCcgq(String propName, MultipartFile[] files);

    Map<String,Object> queryCcgq(JSONObject jsonObject);

    Map<String,Object> queryNdjh(JSONObject jsonObject);

    Map<String,Object> queryDwjsjdjh(JSONObject jsonObject);

    Map<String,Object> queryGdsnmggz(JSONObject jsonObject);

    Map<String,Object> queryKgTcSbdCount();

    Map<String,Object> queryKgTcSbdXq(JSONObject jsonObject);

    Map<String,Object> queryLastMonthBd();

    Map<String,Object> queryLastMonthXl();

    Map<String,Object> queryCurrentMonthKgTc();

    Map<String, Object>  getProgressWarning(String modelType, String status,String cityCode,String pageSize,String pageNo);

    Map<String, Object> getWarningTotal(String cityCode, String modelType);

    Map<String, Object> getMaterialReportingAnalysisCount(String cityCode);

    Map<String, Object> getZdgctj();

    Map<String, Object> queryCcgqTj();

    Map<String, Object> queryXyglgz();

    Map<String, Object> queryPowerCutPlan(String cityCode);
}